import 'package:flutter/material.dart';

/// 应用颜色系统
/// 从 Figma 设计稿中提取的颜色值（深色主题）
class AppColors {
  AppColors._(); // 防止实例化

  // 背景色（深色主题）
  static const Color background = Color(0xFF000000); // 黑色背景
  static const Color surface = Color(0xFF000000);

  // 卡片和面板背景（半透明白色）
  static const Color cardBackground =
      Color(0x0FFFFFFF); // rgba(255, 255, 255, 0.06)
  static const Color cardBackgroundLight =
      Color(0x1FFFFFFF); // rgba(255, 255, 255, 0.12)
  static const Color cardBackgroundDark =
      Color(0x08FFFFFF); // rgba(255, 255, 255, 0.03)

  // 文本颜色（深色主题 - 白色系）
  static const Color textPrimary = Color(0xFFFFFFFF); // 纯白色
  static const Color textSecondary =
      Color(0x8FFFFFFF); // rgba(255, 255, 255, 0.56)
  static const Color textTertiary =
      Color(0xA3FFFFFF); // rgba(255, 255, 255, 0.64)

  // 主色调（橙红色）
  static const Color primary = Color(0xFFFF4E28); // 橙红色
  static const Color primaryDark = Color(0xFFCC3E20);
  static const Color primaryLight = Color(0xFFFF6A4D);

  // 图标颜色
  static const Color iconPrimary = Color(0xFFFFFFFF);
  static const Color iconSecondary =
      Color(0xA3FFFFFF); // rgba(255, 255, 255, 0.64)

  // 分割线和边框
  static const Color divider = Color(0x1FFFFFFF); // rgba(255, 255, 255, 0.12)
  static const Color border = Color(0x1FFFFFFF); // rgba(255, 255, 255, 0.12)

  // 状态颜色
  static const Color success = Color(0xFF34C759); // 绿色
  static const Color error = Color(0xFFFF3B30); // 红色
  static const Color warning = Color(0xFFFF9500); // 橙色
  static const Color info = Color(0xFF5AC8FA); // 浅蓝色

  // 上传状态对应颜色
  static const Color statusAll = Color(0xFFFF4E28); // 全部 - 橙红色
  static const Color statusPending = Color(0xFFFF9500); // 待挑 - 橙色
  static const Color statusUploading = Color(0xFF5AC8FA); // 上传中 - 浅蓝色
  static const Color statusUploaded = Color(0xFF34C759); // 已上传 - 绿色
  static const Color statusFailed = Color(0xFFFF3B30); // 失败 - 红色

  // 阴影颜色（深色主题 - 亮阴影）
  static const Color shadowInner =
      Color(0x0FFFFFFF); // inset shadow rgba(255, 255, 255, 0.06)
  static const Color shadowInnerBottom =
      Color(0x14FFFFFF); // inset shadow rgba(255, 255, 255, 0.08)
}
